The present invention relates generally to the maintenance of handheld computers, and more specifically, to a method and system for remotely maintaining handheld computers.
Handheld computers include devices such as personal digital assistants (PDAs) and smart phones which are generally small enough to be held in the hand of a user. These devices typically include applications such as an address book, daily organizer, and electronic notepad. Examples of handheld computers include 3Com's PALM PILOT, Handspring's VISOR, Casio's CASSIOPEIA, Compaq's AERO, Hewlett Packard's JORNADA, NEC's MOBILEPRO, Novaltel's CONTACT WIRELESS, Sharp's MODILON, Vadem's CLIO, Apple's NEWTON, Research in Motion's BLACKBERRY, Psion's REVO, NETBOOK, and WORKABOUT, NeoPoint's 1000, and Qualcomrnm's PDQ. Handheld computers are widely operated in an environment where software and data records are shared between users. For example, software may be transferred between two handheld computers or downloaded from a personal computer system to a handheld computer. Handheld computers may also receive e-mail messages and other data from another handheld computer via an infrared port or from a personal computer through a modem, serial line connection, or network. In this shared environment, computer viruses can spread among handheld computers as rapidly as they do with personal computer systems.
A computer virus is generally a manmade destructive computer program or code that is loaded onto a computer system without the knowledge of the user. The computer virus is often a self-replicating program containing code that explicitly copies itself and can infect other programs by modifying them or their environment. The term virus generally refers to any destructible or harmful program or code that attempts to hide its possibly malicious function or tries to spread onto as many computers as possible. Even a simple virus can be dangerous as the virus can quickly use a large portion of the available memory and possibly bring down the computer.
Most of the antivirus software available today, such as conventional device resident antivirus scanners, require a large amount of memory. For example, typical scanner software requires approximately 16 MB RAM. While this memory is typically insignificant on personal computers (e.g., desktop or laptop computers) handheld computers often include no more than 2 MB dynamic memory and storage and are not equipped to handle such large memory requirements. Furthermore, handheld computers are generally too slow to provide reasonable virus scanning performance.
Moreover, many handheld computers are not equipped to provide direct network access, and those that can connect with a network, utilize a connection that is either too slow or expensive to be practical for the sizable transfer of data, such as updates to handheld computer applications.
Thus, maintenance to handheld computers, which includes checking the computer for viruses and updating programs installed on the computer, is typically performed by placing the handheld computer in a cradle coupled to the user's personal computer and using the computer to scan files copied from the handheld computer and update software installed on the computer. As previously discussed, it is important to check the handheld computer for viruses often to prevent loss or destruction of files stored on the computer. However, the user of the handheld computer may not have access to his personal computer at all times. Also, it is often desirable to update the handheld computer while at a location remote from the user's own personal computer.
Furthermore, large companies often want to install the same applications on all of the employees' handheld computers, delete unauthorized software, or insure that all computers utilize the same version software. This is easily done on networked computers, however, the company typically has little control over what the employees have installed on their handheld computers.
There is, therefore, a need for a method and system for maintaining a handheld computer remotely and maintaining a plurality of handheld computers from a central location.